package com.kaifamiao.month03.day0317;

import java.util.LinkedList;
import java.util.Queue;

public class QueueDemo {
    /*
        队列是一种特殊的线性表，只允许在表的前端进行删除操作，而在表的后端进行插入操作
        LinkedList类实现了Queue接口，因此我们可以把LinkedList当成Queue来用。
     */
    public static void main(String[] args) {
        Queue<String> q =  new LinkedList<String>();
        // 添加元素，从队尾添加元素 返回添加的元素 add() offer() 返回true 或者false
//        q.offer("a");
//        q.offer("123");
//        q.offer("562");
//        q.offer("23");
//        q.offer("13");
//        System.out.println("offer() 方法: " + q.offer("12"));
//        System.out.println("add() 方法: " + q.add("12"));
//        for (String a : q) {
//            System.out.println(a);
//        }
        System.out.println("=============");
        // 删除元素 删除第一个元素 并且在第一个元素的位置删除 poll() remove()
//        System.out.println("poll() 方法： " + q.poll());
//        for (String a : q) {
//            System.out.println(a);
//        }
        System.out.println("=============");
        // 获取头部的元素  element() peek()
//        System.out.println("element() 方法：" + q.element() );
        System.out.println("peek() 方法：" + q.peek() );
    }
}
